const http = require("http");
const fs = require("fs");
const url = require("url");

// 1. 创建一个服务
const serverObj = http.createServer((req, res)=>{
    // 3. 编写服务器功能
    // 路由处理
    if(req.url.includes("/api")){
        apiHandel(req, res);
    }else{
        fileHandle(req, res);
    }
})

// 功能类请求的处理
function apiHandel(req, res){

    console.log("功能类请求")
    res.write("1");
    res.end();
}

// 文件类（静态资源）请求的处理
function fileHandle(req,res){
    // 先解析url后，根据pathname属性读取文件
    const urlObj = url.parse(req.url);
    // 为了保证服务器文件的安全，以及静态资源的统一管理，将所有的额静态资源放置在一个固定的文件夹内，使用fs模块读取静态资源时，绝对到这个指定文件夹内读取，即可
    fs.readFile("./www" + urlObj.pathname, "utf-8", (err, data)=>{
        if(err){
            res.write("NOT FOUND");
            res.end();
        }else{
            res.write(data);
            res.end();
        }
    })

}

// 2. 挂载到指定端口
serverObj.listen(3000, ()=>{
    console.log("服务器开启成功...")
});

// 根据用户名密码读取数据库

// username:root
// password:123456